Configurar GRUB incorrectamente puede hacer que su sistema sea incapaz de arrancar sin un dispositivo de arranque alternativo, como un CD-ROM. Esta sección no es necesaria para arrancar el sistema LFS. Es posible que sólo desee modificar su actual gestor de arranque, por ejemplo, Grub-Legacy, GRUB2 o LILO.
Asegúrese de que el disco de arranque de emergencia está listo para “rescatar” el ordenador si el equipo se vuelve inutilizable (no arrancable). Si aún no dispone de un dispositivo de inicio, puede crear uno. Para que el procedimiento abajo descrito funcione, tiene que ir por delante de BLFS e instalar xorriso
del paquete
libisoburn.
cd /tmp && grub-mkrescue --output=grub-img.iso && xorriso -as cdrecord -v dev=/dev/cdrw blank=as_needed grub-img.iso
GRUB utiliza su propia estructura de nombres para los discos y particiones de la forma de(hdn,m), donde
n es el número de disco
y m es el número de partición. El número del disco duro comienza a partir de cero, pero el número de partición se inicia desde una para las particiones normales y cinco para las particiones extendidas. Tenga en cuenta que esto es diferente de las versiones anteriores, donde los dos números inician desde cero. Por ejemplo, la partición sda1
es (hd0,1) para GRUB y sdb3
es (hd1,3). A diferencia de Linux, GRUB no considera los dispositivos CD-ROM como discos duros. Por ejemplo, si tienes un CD en hdb
y un segundo disco duro en
hdc
, este segundo disco duro seguiría siendo (hd1).
GRUB funciona mediante la escritura de datos en la primera pista física del disco duro. Esta zona no forma parte de ningún sistema de archivos. Los programas de ahí acceden a los módulos de GRUB en la partición de arranque. La ubicación predeterminada es /boot/grub/.
La ubicación de la partición de arranque es una opción del usuario que afecta a la configuración. Una recomendación es tener una pequeña partición aparte ( un tamaño sugerido es de 100 MB) sólo para información de arranque. De esa manera cada compilación, ya sea LFS o alguna distro comercial, pueden acceder a los mismos archivos de arranque y el acceso a ellos puede hacerse desde cualquier sistema arrancado. Si usted decide hacer esto, tendrá que montar la partición separada, mover todos los archivos en el actual directorio /boot
(por ejemplo, el kernel de linux que acaba de compilar en el apartado anterior) ala nueva partición. A continuación, tendrá que desmontar y volver a montar la partición como /boot
.En caso de hacer esto, asegúrese de actualizar
/etc/fstab
.
El uso de la partición LFS actual también funciona, pero la configuración de múltiples sistemas es más difícil.
Con la información anterior, determina la denominación apropiada para tu partición raíz (o partición de arranque, si se utiliza una separada). Para el siguiente ejemplo, se supone que la partición raíz (o la de arranque) es sda2
.
Instale los archivos de GRUB en /boot/grub
y configure la pista de arranque:
El siguiente comando sobreescribirá el gestor de arranque actual. No ejecute el comando si no desea esto, por ejemplo, si utilizas otro gestor de arranque para administrar el Master Boot Record (MBR).
grub-install /dev/sda
Genera el archivo /boot/grub/grub.cfg
:
cat > /boot/grub/grub.cfg << "EOF"
# Begin /boot/grub/grub.cfg
set default=0
set timeout=5
insmod ext2
set root=(hd0,2)
menuentry "GNU/Linux, Linux 3.13.3-lfs-7.5" {
linux /boot/vmlinuz-3.13.3-lfs-7.5 root=/dev/sda2 ro
}
EOF
Desde la perspectiva de GRUB los archivos del kernel son relativas a la partición que se usa. Si ha utilizado una partición /boot separada, retire /boot desde la línea de linux de arriba. También necesitará cambiar la línea set root para apuntar a la partición de arranque.
GRUB es un programa muy potente y ofrece un enorme número de opciones para el arranque desde una amplia variedad de dispositivos, sistemas operativos y tipos de particiones. También hay muchas opciones de personalización, tales como pantallas gráficas, reproducir sonidos, entrada del ratón, etc. Los detalles de estas opciones están más allá del alcance de esta introducción.
hay un comando, grub-mkconfig,que puede escribir un archivo de configuración de forma automática. Se utiliza un conjunto de scripts localizados en /etc/grub.d/ , los cuales destruirán todas las personalizaciones que se realicen. Estos scripts están diseñados principalmente para distribuciones no de origen y no se recomiendan para LFS. Si instala una distribución comercial de Linux, hay una buena probabilidad de que este programa esté presente. Asegúrese de realizar copias de seguridad del archivo grub.cfg.